Dynomotion

Group: DynoMotion Message: 5385 From: fchopinqc Date: 7/1/2012
Subject: Discovering kflop
Hi! I've been using my new kflop setup and I'm wondering if I'm getting the most of if...

I have a Chinese 3040ZPro CNC with on the 3 axes a 1605 rod. My setup is working on 24 volts with 3 gecko G350 drives. Each step motor is coupled with a encoder giving 8192 decoded pulses / turn.

For the moment I'm using the kflop in a open loop monitored mode (NO PID).

With no load on the CNC the error on the movement is a typical dual V shape pattern with a max deviation of 10 micro steps. Should I get much better result with the PID+filtering? My first attempts to set the PID values didn't improve much the max deviation error value.

This is my HI speed CNC setup I'm not carving steel at those velocity values ;-)

Here is my config for the X axe

ch0->InputMode=ENCODER_MODE;
ch0->OutputMode=STEP_DIR_MODE;
ch0->Vel=24000;
ch0->Accel=48000;
ch0->Jerk=96000;
ch0->P=0;
ch0->I=0;
ch0->D=0;
ch0->FFAccel=5e-006;
ch0->FFVel=0.005;
ch0->MaxI=5;
ch0->MaxErr=1e+006;
ch0->MaxOutput=5;
ch0->DeadBandGain=1;
ch0->DeadBandRange=0;
ch0->InputChan0=0;
ch0->InputChan1=1;
ch0->OutputChan0=0;
ch0->OutputChan1=11;
ch0->MasterAxis=-1;
ch0->LimitSwitchOptions=0x0;
ch0->InputGain0=0.244141;
ch0->InputGain1=0;
ch0->InputOffset0=0;
ch0->InputOffset1=0;
ch0->OutputGain=1;
ch0->OutputOffset=0;
ch0->SlaveGain=1;
ch0->BacklashMode=BACKLASH_OFF;
ch0->BacklashAmount=0;
ch0->BacklashRate=0;
ch0->invDistPerCycle=100;
ch0->Lead=2;
ch0->MaxFollowingError=100000;
ch0->StepperAmplitude=50;

Fred
Thanks
Group: DynoMotion Message: 5386 From: Tom Kerekes Date: 7/1/2012
Subject: Re: Discovering kflop
Hi Fred,
 
I'm not familiar with a 3040ZPro, or a 1605 rod, or a G350 (G250?).  It would be helpful for us to include links.
 
But yes it is typical that a stepper motor will lag behind 1~2 full steps when at speed. It needs to lag behind to generate torque and also there are electrical current lags.  You should be able to reduce those with closed loop control as shown here:
 
 
But depending on your system 10 microsteps may not be that significant compared to other errors like backlash and mechanical compliance.  To get the most benefit from closed loop control the feedback should be from glass scales directly measuring the position of your table.
 
HTH
TK
 
 
 
 

Group: DynoMotion Message: 5389 From: fchopinqc Date: 7/1/2012
Subject: Re: Discovering kflop
Thanks Tom

Sorry keyboard typo, G250 for the gecko drive model or more exactly one G250X and two G251X and I mean 1605 ball screw on all axes...

here is my "cheapo" CNC
http://www.carving-cnc.com/cnc3040-series/cnc3040zs-router-engraver-drilling-and-milling-machine.html

Nothing out of the ordinary except the Kflop...;-)



--- In DynoMotion@yahoogroups.com, Tom Kerekes <tk@...> wrote:
>
> Hi Fred,
>  
> I'm not familiar with a 3040ZPro, or a 1605 rod, or a G350 (G250?).  It would be helpful for us to include links.
>  
> But yes it is typical that a stepper motor will lag behind 1~2 full steps when at speed. It needs to lag behind to generate torque and also there are electrical current lags.  You should be able to reduce those with closed loop control as shown here:
>  
> http://www.dynomotion.com/Help/ClosedLoopStep/ClosedLoopStepper.htm
>  
> But depending on your system 10 microsteps may not be that significant compared to other errors like backlash and mechanical compliance.  To get the most benefit from closed loop control the feedback should be from glass scales directly measuring the position of your table.
>  
> HTH
> TK
>  
>  
>  
>  
>
> From: fchopinqc <fchopinqc@...>
> To: DynoMotion@yahoogroups.com
> Sent: Sunday, July 1, 2012 10:50 AM
> Subject: [DynoMotion] Discovering kflop
>
>
>  
> Hi! I've been using my new kflop setup and I'm wondering if I'm getting the most of if...
>
> I have a Chinese 3040ZPro CNC with on the 3 axes a 1605 rod. My setup is working on 24 volts with 3 gecko G350 drives. Each step motor is coupled with a encoder giving 8192 decoded pulses / turn.
>
> For the moment I'm using the kflop in a open loop monitored mode (NO PID).
>
> With no load on the CNC the error on the movement is a typical dual V shape pattern with a max deviation of 10 micro steps. Should I get much better result with the PID+filtering? My first attempts to set the PID values didn't improve much the max deviation error value.
>
> This is my HI speed CNC setup I'm not carving steel at those velocity values ;-)
>
> Here is my config for the X axe
>
> ch0->InputMode=ENCODER_MODE;
> ch0->OutputMode=STEP_DIR_MODE;
> ch0->Vel=24000;
> ch0->Accel=48000;
> ch0->Jerk=96000;
> ch0->P=0;
> ch0->I=0;
> ch0->D=0;
> ch0->FFAccel=5e-006;
> ch0->FFVel=0.005;
> ch0->MaxI=5;
> ch0->MaxErr=1e+006;
> ch0->MaxOutput=5;
> ch0->DeadBandGain=1;
> ch0->DeadBandRange=0;
> ch0->InputChan0=0;
> ch0->InputChan1=1;
> ch0->OutputChan0=0;
> ch0->OutputChan1=11;
> ch0->MasterAxis=-1;
> ch0->LimitSwitchOptions=0x0;
> ch0->InputGain0=0.244141;
> ch0->InputGain1=0;
> ch0->InputOffset0=0;
> ch0->InputOffset1=0;
> ch0->OutputGain=1;
> ch0->OutputOffset=0;
> ch0->SlaveGain=1;
> ch0->BacklashMode=BACKLASH_OFF;
> ch0->BacklashAmount=0;
> ch0->BacklashRate=0;
> ch0->invDistPerCycle=100;
> ch0->Lead=2;
> ch0->MaxFollowingError=100000;
> ch0->StepperAmplitude=50;
>
> Fred
> Thanks
>
Group: DynoMotion Message: 5391 From: fchopinqc Date: 7/1/2012
Subject: Re: Discovering kflop
My encoders readings move +-3 counts / 2000 ( ratio input applied)
even on idle/stop so a 10 count error seems reasonable...

I use CUI inc AMT102 magnetic encoders at 2048 PVR (+-15 arcmin) maybe I should reduce to 1024 PVR ( 4K count/turn or less).

10 count or 10 uStep = one native motor step => 5mm/200 step = .025mm ~ 1MIL

Unless I put linear encoders I don't think I can get a 1MIL real resolution on a 1.2K CNC/router.

I will redo all this with a true load for the moment it's not possible...

Thanks
Fred





--- In DynoMotion@yahoogroups.com, Tom Kerekes <tk@...> wrote:
>
> Hi Fred,
>  
> I'm not familiar with a 3040ZPro, or a 1605 rod, or a G350 (G250?).  It would be helpful for us to include links.
>  
> But yes it is typical that a stepper motor will lag behind 1~2 full steps when at speed. It needs to lag behind to generate torque and also there are electrical current lags.  You should be able to reduce those with closed loop control as shown here:
>  
> http://www.dynomotion.com/Help/ClosedLoopStep/ClosedLoopStepper.htm
>  
> But depending on your system 10 microsteps may not be that significant compared to other errors like backlash and mechanical compliance.  To get the most benefit from closed loop control the feedback should be from glass scales directly measuring the position of your table.
>  
> HTH
> TK
>  
>  
>  
>  
>
> From: fchopinqc <fchopinqc@...>
> To: DynoMotion@yahoogroups.com
> Sent: Sunday, July 1, 2012 10:50 AM
> Subject: [DynoMotion] Discovering kflop
>
>
>  
> Hi! I've been using my new kflop setup and I'm wondering if I'm getting the most of if...
>
> I have a Chinese 3040ZPro CNC with on the 3 axes a 1605 rod. My setup is working on 24 volts with 3 gecko G350 drives. Each step motor is coupled with a encoder giving 8192 decoded pulses / turn.
>
> For the moment I'm using the kflop in a open loop monitored mode (NO PID).
>
> With no load on the CNC the error on the movement is a typical dual V shape pattern with a max deviation of 10 micro steps. Should I get much better result with the PID+filtering? My first attempts to set the PID values didn't improve much the max deviation error value.
>
> This is my HI speed CNC setup I'm not carving steel at those velocity values ;-)
>
> Here is my config for the X axe
>
> ch0->InputMode=ENCODER_MODE;
> ch0->OutputMode=STEP_DIR_MODE;
> ch0->Vel=24000;
> ch0->Accel=48000;
> ch0->Jerk=96000;
> ch0->P=0;
> ch0->I=0;
> ch0->D=0;
> ch0->FFAccel=5e-006;
> ch0->FFVel=0.005;
> ch0->MaxI=5;
> ch0->MaxErr=1e+006;
> ch0->MaxOutput=5;
> ch0->DeadBandGain=1;
> ch0->DeadBandRange=0;
> ch0->InputChan0=0;
> ch0->InputChan1=1;
> ch0->OutputChan0=0;
> ch0->OutputChan1=11;
> ch0->MasterAxis=-1;
> ch0->LimitSwitchOptions=0x0;
> ch0->InputGain0=0.244141;
> ch0->InputGain1=0;
> ch0->InputOffset0=0;
> ch0->InputOffset1=0;
> ch0->OutputGain=1;
> ch0->OutputOffset=0;
> ch0->SlaveGain=1;
> ch0->BacklashMode=BACKLASH_OFF;
> ch0->BacklashAmount=0;
> ch0->BacklashRate=0;
> ch0->invDistPerCycle=100;
> ch0->Lead=2;
> ch0->MaxFollowingError=100000;
> ch0->StepperAmplitude=50;
>
> Fred
> Thanks
>
Group: DynoMotion Message: 5401 From: Tom Kerekes Date: 7/2/2012
Subject: Re: Discovering kflop
Hi Fred,
 
Those magnetic encoders are known to be a bit noisy.  It may not cause any problem because if it is high frequency then the motor won't respond that quickly and just average things out.  But it makes it difficult to understand what is really going on.
 
Regards
TK